package com.smedi.ismedi.progress.core.application.query.vo;

import com.smedi.ismedi.progress.core.domain.aggregatemodel.mobilestarter.QueryMobileStarterAttachment;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 流动式起重机详情返参
 *
 * @author xienannan
 * @date 2021/08/28
 */
@Data
@Accessors(chain = true)
public class MobileStarterQueryVo implements Serializable {
    @ApiModelProperty(value = "流动式起重机id")
    private Long id;

    @ApiModelProperty(value = "项目id")
    private Long projectId;

    @ApiModelProperty(value = "项目名称")
    private String projectName;

    @ApiModelProperty(value = "设备名称")
    private String equipmentName;

    @ApiModelProperty(value = "租赁单位id")
    private Long leaseUnitId;

    @ApiModelProperty(value = "租赁单位名称")
    private String leaseUnitName;

    @ApiModelProperty(value = "起重吨位")
    private String liftingTonnage;

    @ApiModelProperty(value = "主体院审批人")
    private String mainCourtApprover;

    @ApiModelProperty(value = "总院审批人")
    private String mainHospitalApprover;

    @ApiModelProperty(value = "车辆牌号")
    private String vehicleLicensePlate;

    @ApiModelProperty(value = "车辆型号")
    private String vehicleModel;

    @ApiModelProperty(value = "检测证号")
    private String testCertificateNumber;

    @ApiModelProperty(value = "准入证附件key")
    private String attachmentKey;

    @ApiModelProperty(value = "准入证设备号")
    private String accessCard;

    @ApiModelProperty(value = "设备编号")
    private String equipmentNumber;

    @ApiModelProperty(value = "主体院审批 [0:未审批] [1:审批通过] [2:退回]")
    private Long mainCourtApprove;

    @ApiModelProperty(value = "主体院审批时间")
    private LocalDateTime mainCourtApproveTime;

    @ApiModelProperty(value = "主体院退回原因")
    private String mainCourtReturnReason;

    @ApiModelProperty(value = "总院审批 [0:未审批] [1:审批通过] [2:退回]")
    private Long mainHospitalApprove;

    @ApiModelProperty(value = "总院审批时间")
    private LocalDateTime mainHospitalApproveTime;

    @ApiModelProperty(value = "总院退回原因")
    private String mainHospitalReturnReason;

    @ApiModelProperty(value = "年检到期日期")
    private LocalDateTime annualInspectionDueDate;

    @ApiModelProperty(value = "预计进场日期")
    private LocalDateTime estimatedDateEntry;

    @ApiModelProperty(value = "预计退场日期")
    private LocalDateTime estimatedDateExit;

    @ApiModelProperty(value = "申报人")
    private String declarer;

    @ApiModelProperty(value = "申报时间")
    private LocalDateTime createdDate;

    @ApiModelProperty(value = "创建人")
    private String createdUserId;

    @ApiModelProperty(value = "流动式起重机附件集合")
    private List<QueryMobileStarterAttachment> queryMobileStarterAttachmentList;

    @ApiModelProperty(value = "条件搜索下的所有数据id，用于导出所有的excel使用")
    private List<Long> mobileStarterIds;
}
